Method for Performing Configurable Actions Based Upon Mobile Device Detection

ABSTRACT

A method for performing configurable actions based upon the detection of one or more mobile devices includes receiving from a detection point an identifier for each of one or more mobile devices detected within a detection perimeter associated with the detection point. The identifiers are then filtered to determine a change in status for each of the one or more mobile devices. An action is then performed based upon at least one of the determined changes in status for each of the one or more mobile devices.

PRIORITY DATA

The present application is a continuation application of U.S. patentapplication Ser. No. 12/860,594, filed on Aug. 20, 2010, which isincorporated herein by reference in its entirety.

FIELD OF THE DISCLOSURE

The present disclosure relates to a method for determining and takingactions based upon a detected presence of a mobile device.

BACKGROUND

As the number of communication devices, such as cell phones, voiceterminals, and the like, proliferate, there are likewise an increasingnumber of ways to statically configure the interaction between suchdevices. For example, a simring may be employed by a user of a cellphone so that calls to the cell phone likewise ring at voice terminalswithin the user's home. However, when a home phone is shared acrossmultiple people at a home and the user is away from the home phone,calls to the user's cell phone may result in a disruption to otherpeople within the home. In addition, calls to the user's cell phone maybe answered by someone in the user's home before the user has theopportunity to answer the cell phone.

Given the apparent desire for individuals to configure the operation ofcommunication components in accordance with their personal preferences,there is a need for an effective and efficient technique to allow usersto configure actions to be taken within a communication environmentbased, at least in part, on a detection of the user's location.

SUMMARY OF THE DETAILED DESCRIPTION

In an exemplary and non-limiting embodiment, a method for performingconfigurable actions based upon the detection of one or more mobiledevices comprises receiving from a detection point an identifier foreach of one or more mobile devices detected within a detection perimeterassociated with the detection point. The identifiers are then filteredto determine a change in status for each of the one or more mobiledevices. An action is then performed based upon at least one of thedetermined changes in status for each of the one or more mobile devices.

In another exemplary and non-limiting embodiment, a service node forperforming configurable actions based upon the detection of one or moremobile devices comprises at least one communication interface and acontrol system associated with the at least one communication interface.The control system is adapted to receive from a detection point anidentifier for each of one or more mobile devices detected within adetection perimeter associated with the detection point. The controlsystem is further adapted to filter the one or more identifiers todetermine a change in status for each of the one or more mobile devicesand perform an action based upon at least one of the determined changesin status for each of the one or more mobile devices.

Those skilled in the art will appreciate the scope of the presentinvention and realize additional aspects thereof after reading thefollowing detailed description in association with the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings incorporated in and forming a part of thisspecification illustrate several aspects of the invention, and togetherwith the description serve to explain the principles of the invention.

FIGS. 1 is a block representation of a communication environmentaccording to one embodiment of the disclosure.

FIG. 2 provides an exemplary communication flow according to oneembodiment of the disclosure.

FIGS. 3A and 3B provide an exemplary communication flow according toanother embodiment of the disclosure.

FIG. 4 provides an exemplary communication flow according to anotherembodiment of the disclosure.

FIG. 5 is a block representation of a service node according to oneembodiment of the disclosure.

FIG. 6 is a block representation of a detection point according to oneembodiment of the disclosure.

DETAILED DESCRIPTION

The embodiments set forth below represent the necessary information toenable those skilled in the art to practice the invention and illustratethe best mode of practicing the invention. Upon reading the followingdescription in light of the accompanying drawings, those skilled in theart will understand the concepts of the invention and will recognizeapplications of these concepts not particularly addressed herein. Itshould be understood that these concepts and applications fall withinthe scope of the disclosure and the accompanying claims.

In an exemplary and non-limiting embodiment, a method for performingconfigurable actions based upon the detection of one or more mobiledevices comprises receiving from a detection point an identifier foreach of one or more mobile devices detected within a detection perimeterassociated with the detection point. The identifiers are then filteredto determine a change in status for each of the one or more mobiledevices. An action is then performed based upon at least one of thedetermined changes in status for each of the one or more mobile devices.

Prior to delving into the details of select embodiments, an overview ofan exemplary communication environment 10 is provided in associationwith FIG. 1. In general, a service node 12 is provided to facilitatecommunications among one or more detection points 14, a call server 16,a presence server 18, one or more home location register (HLR)/homesubscriber servers (HSS) 20, and a location server 22. Each detectionpoint 14 operates to query for the presence of one or more mobiledevices 24 located within a detection perimeter 26. For example, adetection point 14 may utilize Bluetooth communications to query for anymobile devices 24 in sufficient proximity to the detection point 14 tobe detected by the detection point 14. While illustrated as encompassinga static area, as described more fully below, the area comprising adetection perimeter 26 may vary based upon, for example, the mode ofdetection employed and, for a given mode of detection, the parametersassociated with a detection attempt. Further, there may be one or morevoice terminals 28 near to and associated with a detection point 26.

The attributes and function of each of these components noted above aredescribed more fully below. As illustrated, the lines extending betweenvarious components indicate modes of communication by which elements andcomponents are communicatively coupled. As described more fully below,such modes of communication include, but are not limited to, bothpacket-based and circuit switched communication.

In general, and in accordance with exemplary and non-limitingembodiments disclosed herein, the service node 12 receives triggeredupdates from the one or more detection points 14 corresponding tochanges in the number and identity of the one or more mobile devices 24within a detection perimeter 26 corresponding to each of the detectionpoints 14. Such changes are indicative of movement by a user or operatorof a mobile device 24 both into and out of one or more detectionperimeters 26. As illustrated and for purposes of clarity, each mobiledevice 24 is labeled with a user identifier followed by a statusidentifier. For example, a first mobile device 24 is identified as “UserA, @home.” In this example, the mobile device 24 is operated by a firstuser A having a status indicating the user A is at home. Likewise, inorder to illustrate the same mobile device 24 in another scenario,elsewhere the same mobile device 24 is identified as “User A, @work.” Inthis instance, the same mobile device 24 is illustrated as havinggeographic location associated with a work environment. As illustrated,different detection points 14 are addressed by unique addresses. In theexample illustrated, the detection point 14 associated with user A'shome is shown as having an IP address of IP₁. Likewise, the detectionpoint 14 associated with user A's work is shown as having an IP addressof IP₂.

In general, the detection by a detection point 14 of a change inlocation of a mobile device 24 is used as a proxy for the status of theuser associated with the mobile device 24. Therefore, when a change inthe location of a user of a mobile device 24 is detected or otherwisedetermined by the service node 12, the service node 12 may take one ormore actions in response thereto. Such actions are configurable by theuser of the mobile device 24 and include, but are not limited to,routing incoming calls to a simring, changing a status of the user in auser profile, informing others of the user's change in status, and thelike.

FIG. 2 is a communication flow diagram illustrating the flow ofinformation arising from user A operating a mobile device 24 andentering into a detection perimeter 26 extending from a detection point14 situated in a home environment. First, the detection point 14interrogates or otherwise queries within the detection perimeter 26 todetermine the presence of one or more mobile devices 24 (step 100). Inan exemplary embodiment, the detection point 14 engages in Bluetoothcommunication to determine one or more mobile devices 24 within thedetection perimeter 26. While illustrated as employing Bluetoothcommunication, any and all modes of querying may be employed that arecapable of uniquely identifying individual mobile devices 24. Examplesof such querying modes include, but are not limited to, infrared (IR)communication, Radio Frequency Identification (RFID) interrogation, andthe like. In an exemplary embodiment, the detection point 14 isconfigured to query for existing mobile devices 24 at predeterminedregular intervals. For example, the detection point 14 may issue a queryevery thirty (30) seconds. The parameters defining the length of timebetween such predetermined intervals may form a part of systemparameters stored at each detection point 14 or, alternatively, may bestored centrally at the service node 12. As described more fully below,parameters defining the length of time between such predeterminedintervals, as well as other parameters (e.g., the signal strength of aninterrogation signal) may assume a default value and may be changed inresponse to triggers.

Next, in response to receiving the query from the detection point 14,the mobile device 24 of user A engages in communication with thedetection point 14 to indicate its presence within the detectionperimeter 26 (step 102). Likewise, the mobile device 24 of another user,user B, engages in communication with the detection point 14 to indicateits presence within the detection perimeter 26 (step 104). In thepresent example, the mobile device 24 of user A is entering into thedetection perimeter 26 from elsewhere while the mobile device 24 of userB has been resting in a substantially stationery manner within thedetection perimeter 26 for a period of time sufficient to have beenpreviously queried by the detection point 14. While illustrated as bothmobile devices 24 engaging in active communication with the detectionpoint 14, such communication may be partially passive, as when one ormore of the mobile devices 24 are detected via passive RFID tagsattached to or otherwise associated with the location of a mobile device24.

Next, the detection point 14 communicates with the service node 12 toreport the presence of the mobile devices 24 (step 106). Specifically,the detection point 14 transmits a unique mobile device identifier foreach detected mobile device 24. In an exemplary embodiment, thedetection point 14 is triggered by the responses from the mobile devices24 to report the information to the service node 12. In the presentexample, the detection point 14 is a computer capable of communicating,such as via Bluetooth, with the mobile devices 24 and communicativelycoupled to the service node 12, such as via a packet based communicationnetwork, such as the Internet.

The service node 12 has stored within it and accessible to it systemconfiguration information including information defining at least anidentity and an address for each detection point 14 communicativelycoupled to the service node 12. In addition to the identity information,the service node 12 may likewise store or have access to informationdefining various parameters such as, for example, a location andidentity of each detection point 14 and user information. Userinformation may include a user identifier (user ID), user preferences,mobile device 24 identifiers associated with the user, detection point14 identifiers, user location status, one or more picture identifiers,and the like. As described more fully below, user preferences may definethe manner in which the service node 12 is to react when triggered by achange in the detection of a mobile device 24 associated with a user.For example, a user of a mobile device 24 may request that, when it isdetermined that the mobile device 24 is within a detection perimeter 26associated with the user's home, incoming calls be routed, via asimring, to one or more voice terminals 28 located within the user'shome. In an exemplary embodiment, the mobile device 24 identifiers maybe the phone numbers associated with each mobile device 24 operated bythe user.

Upon receiving information identifying each mobile device 24 detected bythe detection point 14, the service node 12 proceeds to filter thereceived mobile device 24 identifiers (step 108). The filtering processoperates to identify which mobile devices 24, out of all the mobiledevices 24 detected by a detection point 14, are associated with usersof the communication environment 10. For example, in addition todetecting the presence of the mobile device 24 of user A and the mobiledevice 24 of user B, the detection point 14 may likewise detect a laptopcomputer associated with user A, a Global Positioning System (GPS)device associated with user A, as well as numerous devices owned byneighbors of user A and residing in the homes of neighbors that arelocated within the detection perimeter 26 of the detection point 14.

When the identifiers of each device detected by the detection point 14are received by the service node 12, the service node 12 performs aquery of the stored system parameters and user information associatedwith each device. In the present example, the service node 12 receives,in response to one or more queries, information confirming that theidentifier associated with the mobile device 24 of user A is associatedwith a user, user A, for whom there is stored user information.Likewise, the service node 12 receives information confirming that theidentifier associated with the mobile device 24 of user B is associatedwith a user, user B, for whom there is stored user information. Further,in the present example, when the service node 12 discovers that there isno accessible data or information associated with the various otherdevice identifiers reported by the detection point 14, the service node12 effectively filters out such device identifiers as candidates fortriggering additional actions.

As is evident, because a detection point 14 is capable of detecting arelatively large number of devices which are configured to form a partof the communication environment 10 and, because a plurality ofdetection points 14 may each be configured to report detected mobiledevices 24 to the service node 12, the collective messaging volumerequired to repeatedly report detected mobile devices 24 from eachdetection point 14 to the service node 12 may be prohibitive orotherwise undesirable. As a result, in an exemplary embodiment, theprocess of filtering the detected mobile device 24 identifiers may bepushed down to the detection point 14 level. In such an instance, eachdetection point 14 has stored upon it or accessible by it the storedsystem parameters and user information associated with each mobiledevice 24.

Next, the service node 12 determines one or more actions to be taken inresponse to the detection of the one or more mobile devices 24 (step110). In the present example, the mobile device 24 associated with userB has been previously detected. As a result, when the service node 12queries the user information in step 108, the service node 12 retrievesa status for the mobile device 24 of user B of “@home.” The service node12 is likewise able to query information associated with the detectionpoint 14 so as to establish that the detection point 14 is associatedwith user B's home. The service node 12 is therefore able to ascertainthat the user status of user B is unchanged. Conversely, in the presentexample, it is assumed that the mobile device 24 of user A is newlydetected within the detection perimeter 26 associated with the detectionpoint 14 at user A's home. For example, when the service node 12 queriesthe user information in step 108, the service node 12 retrieves a statusfor the mobile device of user A of “away.” The service node 12 islikewise able to query information associated with the detection point14 so as to establish that the detection point 14 is associated withuser A's home. As a result, the service node 12 determines that user Ais coming from somewhere else and has entered into proximity with userA's home.

In response, the service node 12 performs a first action based upon thedetermined change of status for user A. In the present example, theservice node 12 proceeds to access and update a user status field of theuser information from “away” to “@ home” (step 112). As illustrated, theuser information is stored at the service node 12, such as in a databaseforming a part of the service node 12. In another exemplary embodiment,user information related to a status of a user may be stored in thepresence server 18 communicatively coupled to the service node 12 andmay be updated as required. In another example, various attributesassociated with user A, such as via user A's user profile, may bechanged or otherwise altered to reflect the change of status for user A.In an exemplary embodiment, a picture identifier (picture ID) comprisingan image may be changed to reflect the change in user A's status. Forexample, a picture associated with user A may be changed to an image ofuser A lounging around user A's home.

In an exemplary embodiment, various actions to be taken by the servicenode 12 in response to a detection of a mobile device 24 that results ina change to a status of the mobile device 24 associated with a user maybe defined by a user and stored as accessible by the service node 12 as,for example, user information or as a system parameter. For example, auser may define as part of an associated user profile comprising a partof the user information that when a mobile device 24 associated withuser A is detected at user A's home, calls to the mobile device 24 areto be routed so as to simring one or more voice terminals 28 at user A'shome. As illustrated in FIG. 1, the home voice terminal 28 is associatedwith a directory number DN1. In an exemplary embodiment, the servicenode 12, having determined to change the routing of incoming calls touser A based upon the change in status of the mobile device 24 of user Aand the preferences of user A retrieved from the user profile of user A,communicates with and instructs the call server 16 to forward calls tothe mobile device 24 of user A to the voice terminal 28 directory numberDN1 (step 114).

In an exemplary embodiment, another action that may be performed by theservice node 12 in response to a change in status of a mobile device 24associated with a user is the transmission of one or more statusnotifications to designated destinations (step 116). Modes for sendingsuch status notifications include, but are not limited to, sendingmessages via email, Short Message Service (SMS), Instant Messaging (IM),and the like. The address and/or destination identifiers of the partiesto whom the messages are sent may be defined in one or more userprofiles accessible by the service node 12. For example, user A mayassociate a mobile device 24, such as a cell phone, with himself in auser profile while similarly storing in the user profile a phone numberof a family member to whom a text message is to be sent when user Aarrives within the detection perimeter 26 of a detection point 14associated with user A's home. In the present example, upon enteringuser A's home and being detected by a detection point 14 associated withthe home, the resulting change in user A's status causes the servicenode 12, in accordance with user A's profile instructions, to send atext message to user A's spouse, wherein the text message reads, “User Aarrived home @ 5:35 PM.” In another exemplary embodiment, in response touser A's change in status, the service node 12 may update an entry onuser A's social networking site so that user A's status is available tosocial network friends of user A.

FIGS. 3A and 3B are communication flow diagrams illustrating the flow ofinformation arising from user A operating a mobile device 24 within adetection perimeter 26 extending from a detection point 14 situated in ahome environment and then leaving the detection perimeter 26. First, thedetection point 14 interrogates or otherwise queries within thedetection perimeter 26 to determine the presence of one or more mobiledevices 24 (step 200). In an exemplary embodiment, the detection point14 engages in communication to determine one or more mobile devices 24within the detection perimeter 26. In an exemplary embodiment, thedetection point 14 is configured to query for existing mobile devices 24at predetermined regular intervals. For example, the detection point 14may issue a query every thirty (30) seconds. The parameters defining thelength of time between such predetermined intervals may form a part ofsystem parameters stored at each detection point 14 or, alternatively,may be stored centrally at the service node 12. As described more fullybelow, parameters defining the length of time between such predeterminedintervals, as well as other parameters (e.g., the signal strength of aninterrogation signal), may assume a default value and may be changed inresponse to triggers.

Next, in response to receiving the query from the service node 12, themobile device 24 of user A engages in communication with the detectionpoint 14 to indicate its presence within the detection perimeter 26(step 202). In contrast to the example of FIG. 1, in the presentexample, it is assumed that the mobile device 24 of user A is the onlymobile device 24 within the home detection perimeter 26. The mobiledevice 24 of user A has been resting in a substantially stationerymanner within the detection perimeter 26 for a period of time sufficientto have been previously queried by the detection point 14.

Next, the detection point 14 communicates with the service node 12 toreport the presence of mobile devices 24 of user A (step 204).Specifically, the detection point 14 transmits a unique mobile device 24identifier for the mobile device 24 of user A. In an exemplaryembodiment, the detection point 14 is triggered by the response from themobile device 24 to report the information to the service node 12. Inthe present example, the detection point 14 is a computer capable ofcommunicating, such as via Bluetooth, with the mobile devices 24 andcommunicatively coupled to the service node 12, such as via a packetbased communication network, such as the Internet.

The service node 12 has stored within it and/or accessible to it systemconfiguration information including information defining at least anidentity and an address for each detection point 14 communicativelycoupled to the service node 12.

Upon receiving information identifying each mobile device 24 detected bythe detection point 14, the service node 12 proceeds to filter thereceived mobile device 24 identifiers (step 206). The filtering processoperates to identify which mobile devices 24, out of all the mobiledevices 24 detected by a detection point 14, are associated with usersof the communication environment 10. When the identifiers of each devicedetected by the detection point 14 are received by the service node 12,the service node 12 performs a query of the stored system parameters anduser information associated with each device. In the present example,the service node 12 receives information confirming that the identifierassociated with the mobile device 24 of user A is associated with auser, user A, for whom there is stored user information. In an exemplaryembodiment, in addition to filtering the detected mobile device 24identifiers to include only mobile device 24 identifiers associated withmobile devices 24 that are registered or otherwise configured as a partof the communication environment 10, the service node 12 further filtersreceived mobile device 24 identifiers to disregard those associated withmobile devices 24 whose status has not changed since the last reportfrom a detection point 14. As noted above, in the present example, themobile device 24 of user A was previously detected in proximity to thedetection point 14 associated with user A's home. As a result, no actionis triggered by the continued presence of the mobile device 24 of userA.

Next, after a configurable and predetermined period of time, thedetection point 14 once again interrogates or otherwise queries withinthe detection perimeter 26 to determine the presence of one or moremobile devices 24 (step 208). In the present example, it is assumed thatat some point in between the performance of step 202 and step 208, themobile device 24 of user A exits the detection perimeter 26 within whichit was previously residing. This occurrence is illustrated as thetermination of the vertical timeline descending downwards from themobile device 24 of user A. As a result, the detection point 14 does notreceive a reply from any mobile device 24 within the detection perimeter26. The detection point 14 proceeds to report to the service node 12that there are no mobile devices 24 detected (step 210).

Upon receiving the information from the detection point 14, the servicenode 12 proceeds once again to filter the detected mobile device 24identifiers. As no mobile device 24 identifiers were detected, thefiltering process results in a determination that the status of user A'smobile device 24 has changed (step 212). As illustrated, when theservice node 12 determines that a mobile device 24 that was presentwithin a detection perimeter 26 is no longer found to be present withinthe detection perimeter 26, the service node 12 may optionally act torequest a confirmation from the detection point 14. In practice, when amobile device 24 is located at or near the outermost boundaries of adetection perimeter 26, small movements of the mobile device 24 orchanges to the environment around the detection point 14 may result inthe mobile device 24 being alternately detectable and undetectable bysubsequent queries from the detection point 14. In such instances, thedesired status of the mobile device 24 (e.g., “@home”) has not changed.Rather, the ability of the detection point 14 to detect the mobile 5device 24 has changed.

In an exemplary and non-limiting embodiment, the service node 12 mayoptionally first instruct the detection point 14 to increase the valueof the parameter defining the detection signal strength (step 214).Next, the service node 12 requests a confirmation query from thedetection point 14 (step 216). In response to the request for aconfirmation query, the detection point 14 interrogates or otherwisequeries within the detection perimeter 26 to determine the presence ofone or more mobile devices 24 (step 218) and once again reports any andall detected mobile devices 24 to the service node 12 (step 220). Whilenot illustrated, the service node 12 may optionally instruct thedetection point 14 to return to the previous detection signal strengthparameter.

After having determined a change in the status of the mobile device 24of user A in step 212 and, after optionally confirming the change instatus of user A's mobile device 24 in steps 214-220, the service node12 performs a first action based upon the determined change of statusfor user A. In the present example, the service node 12 proceeds toaccess and update a user status field of the user information from“@home” to “away” (step 222). As illustrated, the user information isstored at the service node 12, such as in a database forming a part ofthe service node 12. In another exemplary embodiment, user informationrelated to a status of a user may be stored in the presence server 18communicatively coupled to the service node 12 and may be updated asrequired. In another example, various attributes associated with user A,such as via user A's user profile, may be changed or otherwise alteredto reflect the change of status for user A. In an exemplary embodiment,a picture identifier (picture ID) comprising an image may be changed toreflect the change in user A's status. In the present example, a pictureassociated with user A may be changed to an image of user A driving acar in transit to adventure.

As noted above, various actions to be taken by the service node 12 inresponse to a detection of a mobile device 24 that results in a changeto a status of a mobile device 24 associated with a user may be definedby a user and stored as accessible by the service node 12 as, forexample, user information or as a system parameter. For example, a usermay define as part of an associated user profile comprising a part ofthe user information that when a mobile device 24 associated with user Ais no longer detected at a detection point 14, calls previously routedto one or more voice terminals 28 are to be routed to user A's mobiledevice 24. As illustrated in FIG. 1, while detected by the detectionpoint 14 associated with user A's home, incoming calls to user A'smobile device 24 were routed to a home voice terminal 28 associated witha directory number DN1. In an exemplary embodiment, the service node 12,having determined to change the routing of incoming calls to user Abased upon the change in status of the mobile device 24 of user A andthe preferences of the user A retrieved from the user profile of user A,communicates with and instructs the call server 16 to stop forwardingcalls from the mobile device 24 of user A to the voice terminal 28directory number DN1 (step 224).

In another exemplary embodiment, in response to the illustrated changein status of user A's mobile device 24, the service node 12 may instructone or more detection points 14 to increase the frequency at which theyquery for nearby mobile devices 24. In the present example, the servicenode 12 requests both the detection point 14 associated with a home anda detection point 14 associated with a place of employment to increasethe frequency at which they query for mobile devices 24 (steps 226 and228). This may prove desirable particularly in instances where multipledetection points 14 are in close proximity to one another. In suchinstances, when user A leaves a first detection perimeter 26, user A islikely to soon enter into another second detection perimeter 26. Byincreasing the rate at which detection points 14 query for mobiledevices 24, there is avoided the length of time that the status of userA is generically defined to simply be “away.”

As described above with reference to FIG. 2, in an exemplary embodiment,another action that may be performed by the service node 12 in responseto a change in status of a mobile device 24 associated with a user isthe transmission of one or more status notifications to designateddestinations (step 230). Modes for sending such status notificationsinclude, but are not limited to, sending messages via email, SMS, IM,and the like. In the present example, upon leaving home and no longerbeing detected by a detection point 14 associated with the home, theresulting change in user A's status causes the service node 12, inaccordance with user A's profile instructions, to send a text message touser A's spouse, wherein the text message reads, “User A left home @5:35 PM.” In another exemplary embodiment, in response to user A'schange in status, the service node 12 may update an entry on user A'ssocial networking site so that user A's status is available to socialnetwork friends of user A.

FIG. 4 is a communication flow diagram illustrating the flow ofinformation arising when a detection point 14 becomes inoperable. First,the service node 12 detects the inoperability of a detection point 14(step 300). Such a detection may result, for example, from a personalcomputer (PC) comprising the detection point 14 entering into a sleepmode, wherein the detection point 14 ceases to perform queries formobile devices 24. For example, in an instance where a detection point14 is configured to transmit the mobile device 24 identifierscorresponding to detected mobile devices 24 to the service node 12 everythirty (30) seconds, the service node 12 may determine that a detectionpoint 14 is temporarily inoperable when a period of time greater thanthirty (30) seconds passes without receiving an update from thedetection point 14.

Having determined the inoperability of a detection point 14, the servicenode 12 operates to send a request to one or more devices capable ofestablishing a location of one or more mobile devices 24 known to havebeen previously detectable by the detection point 14 prior to thedetection point 14 becoming inoperable (step 302). In the presentexample, the service node 12 sends a request to the HLR/HSS 20 forlocation information corresponding to the mobile device 24 of user A. Inan alternative embodiment, the service node 12 sends a request to thelocation server 22 on which location information corresponding to one ormore mobile devices 24 is periodically stored. Upon receiving therequest, the HLR/HSS 20 checks to see if it has location informationcorresponding to the mobile device 24 of user A stored (step 304). Inthe event that there is none such information available, the HLR/HSS 20requests location information from the mobile device 24 of user A (step306). In an exemplary embodiment, the HLR/HSS 20 may query the mobiledevice 24 for GPS derived location information. In response, the mobiledevice 24 replies with the requested location information (step 308). Inother exemplary embodiments, the HLR/HSS 20 may engage in cell towertriangulation or any other method for determining a location of, forexample, the mobile device 24 of user A.

After receiving the location information from the mobile device 24, theHLR/HSS 20 transmits the location to the service node 12 (step 310).Upon receiving the location information, the service node 12 determinesone or more actions to be taken (step 312). In an exemplary embodiment,the service node 12 may retrieve a stored attribute parameter associatedwith the detection point 14 and comprising an approximate geographiclocation of the detection point 14. The service node 12 next comparesthe received location information of one or more mobile devices 24 tothe geographic location of a detection point 14 to determine if themobile device 24 has moved an amount sufficient to require a change tothe status of the user associated with the mobile device 24.

With reference to FIG. 5, a block representation of the service node 12is illustrated according to one embodiment. The service node 12 mayinclude a control system 30 having sufficient memory 32 for therequisite software 34 and data 36 to operate as described above. Thesoftware 34 may provide the communication function, web server function,and interworking function, which are described above. The control system30 may also be associated with one or more communication interfaces 38to facilitate communications with the various entities illustrated inthe communication environment 10, as well as any other entities beingused during the implementation of the present invention.

With reference to FIG. 6, a block representation of a detection point 14is illustrated. The detection point 14 may represent a personal computeror the like and may include a control system 40 having sufficient memory42 for the requisite software 44 and data 46 to operate as describedabove. The control system 40 may be associated with one or morecommunication interfaces 48 to facilitate communications as describedabove, as well as a user interface 50. The user interface 50 may includeinput devices such as a keypad, mouse, touchscreen, microphone, and thelike, as well as one or more output mechanisms, including speakers,displays, and the like.

Those skilled in the art will recognize improvements and modificationsto the embodiments of the present invention. All such improvements andmodifications are considered within the scope of the concepts disclosedherein and the claims that follow.

1. A method for performing configurable actions based upon detection ofuser communication devices, the method comprising: receiving from adetection point an identifier for a first one of a plurality of usercommunication devices detected within a detection perimeter associatedwith the detection point; filtering the identifier to determine a changein status for the first user communication device, wherein the filteringcomprises identifying ones of the user communication devices that areassociated with stored user information of a communication environment;and directing a call server to alter call routing based upon thedetermined change in status for the first user communication device. 2.wherein directing the call server comprises: directing the call serverto alter call routing to another user communication device associatedwith a user of the first user communication device.
 3. The method ofclaim 2 in which the first user communication device comprises a mobilephone of the user, and wherein the another user communication devicecomprises a voice terminal associated with the user's home.
 4. Themethod of claim 1, wherein altering the call routing comprisessimultaneously ringing a mobile phone and at least one voice terminalassociated with the user.
 5. The method of claim 1, wherein thedetermined change in status is indicative of the first usercommunication device entering into the detection perimeter associatedwith the detection point.
 6. The method of claim 1, further comprising:updating a user profile of the user based upon the determined change instatus.
 7. The method of claim 6 wherein updating the user profilecomprises updating an image associated with the user.
 8. The method ofclaim 1, wherein a destination of the call routing is configurable bythe user.
 9. A method for performing configurable actions based upondetection of user communication devices, the method comprising:receiving from a detection point an identifier for a first one of aplurality of user communication devices detected within a detectionperimeter associated with the detection point; filtering the identifierto determine a change in status for the first user communication device;and performing an action based upon the determined change in status forthe first user communication device, where the action comprisestransmitting the determined change in status to a person different thana user associated with the first user communication device.
 10. Themethod of claim 9, wherein transmitting the determined change in statuscomprises: transmitting a message to a family member of the userassociated with the first user communication device.
 11. The method ofclaim 9 wherein the determined change in status is transmitted via atleast one of email, Short Message Service (SMS), and Instant Messaging(IM).
 12. The method of claim 9, further comprising: receiving adefinition of the action from the user; and storing the definition ofthe action to be accessible by a device performing the action.
 13. Themethod of claim 12, wherein storing the definition comprises: storing,as a part of a profile of the user, a destination for sending a messageindicating the determined change in status.
 14. The method of claim 9,wherein the determined change in status is transmitted to a socialnetwork associated with the user.
 15. The method of claim 9, wherein theaction is based upon an identity of the detection point.
 16. The methodof claim 9, further comprising: updating a user profile of the userbased upon the determined change in status.
 17. The method of claim 16,wherein updating the user profile comprises updating an image associatedwith the user.
 18. A service node for performing configurable actionsbased upon detection of user communication devices, the service nodecomprising: a communication interface; and a control system associatedwith the communication interface and adapted to: receive from adetection point an identifier for a first one of a plurality of usercommunication devices detected within a detection perimeter associatedwith the detection point; filtering the identifier to determine a changein status for the first user communication device, wherein the filteringcomprises identifying ones of the user communication devices that areassociated with stored user information of a communication environment;and perform an action based upon at the determined change in status forthe first user communication device.
 19. The service node of claim 18,wherein the control system is further adapted to: receive a definitionof the action from the user; and store the definition of the action tobe accessible by a device performing the action.
 20. The service node ofclaim 19, wherein storing the definition comprises: storing, as a partof a profile of the user, a destination for sending a message indicatingthe determined change in status.